Loading…
April 16-18, 2024
Seattle, Washington
View More DetailsRegistration
Note: The schedule is subject to change.

The Sched app allows you to build your schedule but is not a substitute for your event registration. You must be registered for Embedded Open Source Summit North America 2024 to participate in the sessions. If you have not registered but would like to join us, please go to the event registration page to purchase a registration.

This schedule is automatically displayed in Pacific Daylight Time (UTC/GMT -8). To see the schedule in your preferred timezone, please select from the drop-down menu to the right, above "Filter by Date."

IMPORTANT NOTE: Timing of sessions and room locations are subject to change.

Tuesday, April 16 • 9:05am - 9:45am
In the Kernel Trenches: Mastering Ethernet Drivers on Linux - Maxime Chevallier, Bootlin

Sign up or log in to save this to your schedule, view media, leave feedback and see who's attending!

Feedback form is now closed.


An Ethernet Controller driver in linux is a complex piece of software, with many entrypoints and callbacks, even for a basic Ethernet Controller we can find in Embedded Systems. In this talk, we'll take a tour of what's inside a typical Ethernet driver. We'll start with the base of what every network driver provides, even non-Ethernet ones, a net_device. We will discuss the various required steps to get a basic driver working, ranging from simple initialization, queue setup, DMA mappings, before diving into more advances topics such as the NAPI loop implementation, memory-management through the page-pool API and finally XDP, which is now getting implemented in more and more drivers. We'll continue the tour through the ethernet-specific bits, such as the ethtool operations, and phylink support to interact with a potential Ethernet PHY, and discuss a little bit about the specifics of embedded Ethernet Controllers, where low-level configuration for a PCS or some Serdes lanes might be required. Finally, we'll discuss about testing and debugging tools that can be useful to help you in your driver development, but also in debugging and optimizing existing drivers.

Speakers
avatar for Maxime Chevallier

Maxime Chevallier

Embedded Linux and Kernel Engineer, Bootlin
Maxime Chevallier is an Embedded Linux and Kernel engineer at Bootlin, where he has been working on Ethernet Controller drivers and PHY drivers for more than 6 years. He contributed to the Marvell PPv2 driver, and to various PHY, Switch and PCS drivers.



Tuesday April 16, 2024 9:05am - 9:45am PDT
335-336 (Level 3)
  Embedded Linux Conference
  • Content Experience Level Beginner
  • Session Slides Attached Yes